package cn.yuan.arithmetic.array;

/**
 * 数组接口.
 *
 * @author : YJS
 * @date: 2020-12-14 13:31
 */
public interface Array<E> {

    //元素的数量
    int size();
    //数组的容量
    int cpacity();
    // 是否为空
    boolean isEmpty();
    // 是否包含某个元素
    boolean contains(E element);

    // 添加元素到前面
    void addFirst(E element);
    // 添加元素到最后面
    void addLast(E element);
    // 往index位置添加元素
    void add(int index, E element);

    // 删除index位置对应的元素
    void remove(int index);
    // 清除所有元素
    void clear();

    // 设置index位置的元素
    void set(int index, E element);

    // 返回index位置对应的元素
    E get(int index);
    // 查看元素的位置
    int indexOf(E element);

    //打印
    String toString();
}
